k = 3, n = 7
// 输入: k = 3, n = 7
// 输出: [[1, 2, 4]]
// 解释:
// 1 + 2 + 4 = 7
// 没有其他符合的组合了。


var combinationSum3 = function (k, n) {
    let result = []
    let zuhe = []
    let sum = 0

    function dfs(index) {
        if (sum > n) {
            return
        }
        if (zuhe.length === k) {
            if (sum === n) {
                result.push(zuhe.slice());
            }
        }

        for (let i = index; i <= 9 - (k - zuhe.length) + 1; i++) {
            sum += i
            zuhe.push(i)
            dfs(i + 1)
            sum -= i
            zuhe.pop()
        }
    }

    dfs(1)
    return result
};